home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 15
/
Aminet 15 - Nov 1996.iso
/
Aminet
/
dev
/
basic
/
ace24dist.lha
/
ace24.lha
/
include
/
intuition
/
Screens.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-09-10
|
27KB
|
722 lines
#ifndef INTUITION_SCREENS_H
#define INTUITION_SCREENS_H TRUE
/*
** screens.h for ACE Basic
**
** Note: Translated to ACE by ConvertC2ACE
** @ MapMeadow Software, Nils Sjoholm
**
**
** Date: 09/01/95
**
** Note: Fixed a missing kludegefill in Struct _Screen
** Date 14-Oct-95 Nils Sjoholm
**
*/
/*
** This are the StructPointer defines for screens.h
*/
#ifndef DrawInfoPtr
#define DrawInfoPtr ADDRESS
#endif
#ifndef ExtNewScreenPtr
#define ExtNewScreenPtr ADDRESS
#endif
#ifndef NewScreenPtr
#define NewScreenPtr ADDRESS
#endif
#ifndef PubScreenNodePtr
#define PubScreenNodePtr ADDRESS
#endif
#ifndef ScreenPtr
#define ScreenPtr ADDRESS
#endif
#ifndef ScreenBufferPtr
#define ScreenBufferPtr ADDRESS
#endif
#ifndef dri_Resolution_StructPtr
#define dri_Resolution_StructPtr ADDRESS
#endif
/*
** End of StructPointer defines for screens.h
*/
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef GRAPHICS_GFX_H
#include <graphics/gfx.h>
#endif
#ifndef GRAPHICS_CLIP_H
#include <graphics/clip.h>
#endif
#ifndef GRAPHICS_VIEW_H
#include <graphics/view.h>
#endif
#ifndef GRAPHICS_RASTPORT_H
#include <graphics/rastport.h>
#endif
#ifndef GRAPHICS_LAYERS_H
#include <graphics/layers.h>
#endif
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif
#ifndef WindowPtr
#define WindowPtr ADDRESS
#endif
/*
* NOTE: intuition/iobsolete.h is included at the END of this file!
*/
/* ======================================================================== */
/* === DrawInfo ========================================================= */
/* ======================================================================== */
/* This is a packet of information for graphics rendering. It originates
* with a Screen, and is gotten using GetScreenDrawInfo( screen )
*/
/* You can use the Intuition version number to tell which fields are
* present in this structure.
*
* DRI_VERSION of 1 corresponds to V37 release.
* DRI_VERSION of 2 corresponds to V39, and includes three new pens
* and the dri_CheckMark and dri_AmigaKey fields.
*
* Note that sometimes applications need to create their own DrawInfo
* structures, in which case the DRI_VERSION won't correspond exactly
* to the OS version!!!
*/
#define DRI_VERSION (2)
STRUCT dri_Resolution_Struct /* from DisplayInfo database FOR initial display mode */
SHORTINT X
SHORTINT Y
END STRUCT
STRUCT DrawInfo
SHORTINT dri_Version /* will be DRI_VERSION */
SHORTINT dri_NumPens /* guaranteed to be >= 9 */
ADDRESS dri_Pens /* pointer to pen array */
TextFontPtr dri_Font /* screen default font */
SHORTINT dri_Depth /* (initial) depth of screen bitmap */
dri_Resolution_Struct dri_Resolution
LONGINT dri_Flags /* defined below */
/* New for V39: dri_CheckMark, dri_AmigaKey. */
ImagePtr dri_CheckMark /* pointer to scaled checkmark image
* Will be NULL if DRI_VERSION < 2
*/
ImagePtr dri_AmigaKey /* pointer to scaled Amiga-key image
* Will be NULL if DRI_VERSION < 2
*/
STRING dri_Reserved SIZE 20 /* 5*SIZEOF(LONGINT) */ /* avoid recompilation ^) */
END STRUCT
#define DRIF_NEWLOOK &H00000001 /* specified SA_Pens, full treatment */
/* rendering pen number indexes into DrawInfo.dri_Pens[] */
#define DETAILPEN (&H0000) /* compatible Intuition rendering pens */
#define BLOCKPEN (&H0001) /* compatible Intuition rendering pens */
#define TEXTPEN (&H0002) /* text on background */
#define SHINEPEN (&H0003) /* bright edge on 3D objects */
#define SHADOWPEN (&H0004) /* dark edge on 3D objects */
#define FILLPEN (&H0005) /* active-window/selected-gadget fill */
#define FILLTEXTPEN (&H0006) /* text over FILLPEN */
#define BACKGROUNDPEN (&H0007) /* always color 0 */
#define HIGHLIGHTTEXTPEN (&H0008) /* special color text, on background */
/* New for V39, only present if DRI_VERSION >= 2: */
#define BARDETAILPEN (&H0009) /* text/detail in screen-bar/menus */
#define BARBLOCKPEN (&H000A) /* screen-bar/menus fill */
#define BARTRIMPEN (&H000B) /* trim under screen-bar */
#define NUMDRIPENS (&H000C)
/* New for V39: It is sometimes useful to specify that a pen value
* is to be the complement of color zero to three. The "magic" numbers
* serve that purpose:
*/
#define PEN_C3 &HFEFC /* Complement of color 3 */
#define PEN_C2 &HFEFD /* Complement of color 2 */
#define PEN_C1 &HFEFE /* Complement of color 1 */
#define PEN_C0 &HFEFF /* Complement of color 0 */
/* ======================================================================== */
/* === Screen ============================================================= */
/* ======================================================================== */
/* VERY IMPORTANT NOTE ABOUT Screen->BitMap. In the future, bitmaps
* will need to grow. The embedded instance of a bitmap in the screen
* will no longer be large enough to hold the whole description of
* the bitmap.
*
* YOU ARE STRONGLY URGED to use Screen->RastPort.BitMap in place of
* &Screen->BitMap whenever and whereever possible.
*/
STRUCT _Screen
ScreenPtr NextScreen /* linked list of screens */
WindowPtr FirstWindow /* linked list Screen's Windows */
SHORTINT LeftEdge
SHORTINT TopEdge /* parameters of the screen */
SHORTINT _Width
SHORTINT Height /* parameters of the screen */
SHORTINT MouseY
SHORTINT MouseX /* position relative to upper-left */
SHORTINT Flags /* see definitions below */
ADDRESS Title /* null-terminated Title text */
ADDRESS DefaultTitle /* for Windows without ScreenTitle */
/* Bar sizes for this Screen and all Window's in this Screen */
/* Note that BarHeight is one less than the actual menu bar
* height. We're going to keep this in V36 for compatibility,
* although V36 artwork might use that extra pixel
*
* Also, the title bar height of a window is calculated from the
* screen's WBorTop field, plus the font height, plus one.
*/
BYTE BarHeight
BYTE BarVBorder
BYTE BarHBorder
BYTE MenuVBorder
BYTE MenuHBorder
BYTE WBorTop
BYTE WBorLeft
BYTE WBorRight
BYTE WBorBottom
BYTE KludgeFill00
TextAttrPtr _Font /* this screen's default font */
/* the display data structures for this Screen */
ViewPort ViewPort /* describing the Screen's display */
RastPort RastPort /* describing Screen rendering */
BitMap BitMap /* SEE WARNING ABOVE! */
Layer_Info LayerInfo /* each screen gets a LayerInfo */
/* Only system gadgets may be attached to a screen.
* You get the standard system Screen Gadgets automatically
*/
GadgetPtr FirstGadget
BYTE DetailPen
BYTE BlockPen /* for bar/border/gadget rendering */
/* the following variable(s) are maintained by Intuition to support the
* DisplayBeep() color flashing technique
*/
SHORTINT SaveColor0
/* This layer is for the Screen and Menu bars */
LayerPtr BarLayer
ADDRESS ExtData
ADDRESS UserData /* general-purpose pointer to User data extension */
/**** Data below this point are SYSTEM PRIVATE ****/
END STRUCT
/* --- FLAGS SET BY INTUITION --------------------------------------------- */
/* The SCREENTYPE bits are reserved for describing various Screen types
* available under Intuition.
*/
#define SCREENTYPE &H000F /* all the screens types available */
/* --- the definitions for the Screen Type ------------------------------- */
#define WBENCHSCREEN &H0001 /* identifies the Workbench screen */
#define PUBLICSCREEN &H0002 /* public shared (custom) screen */
#define CUSTOMSCREEN &H000F /* original custom screens */
#define SHOWTITLE &H0010 /* this gets set by a call to ShowTitle() */
#define BEEPING &H0020 /* set when Screen is beeping (private) */
#define CUSTOMBITMAP &H0040 /* if you are supplying your own BitMap */
#define SCREENBEHIND &H0080 /* if you want your screen to open behind
* already open screens
*/
#define SCREENQUIET &H0100 /* if you do not want Intuition to render
* into your screen (gadgets, title)
*/
#define SCREENHIRES &H0200 /* do not use lowres gadgets (private) */
#define NS_EXTENDED &H1000 /* ExtNewScreen.Extension is valid */
/* V36 applications can use OpenScreenTagList() instead of NS_EXTENDED */
#define AUTOSCROLL &H4000 /* screen is to autoscoll */
/* New for V39: */
#define PENSHARED &H0400 /* Screen opener set SA_SharePens, TRUEEND STRUCT */
#define STDSCREENHEIGHT -1 /* supply in NewScreen.Height */
#define STDSCREENWIDTH -1 /* supply in NewScreen.Width */
/*
* Screen attribute tag ID's. These are used in the ti_Tag field of
* TagItem arrays passed to OpenScreenTagList() (or in the
* ExtNewScreen.Extension field).
*/
/* Screen attribute tags. Please use these versions, not those in
* iobsolete.h.
*/
#define SA_Dummy (TAG_USER + 32)
/*
* these items specify items equivalent to fields in NewScreen
*/
#define SA_Left (SA_Dummy + &H0001)
#define SA_Top (SA_Dummy + &H0002)
#define SA_Width (SA_Dummy + &H0003)
#define SA_Height (SA_Dummy + &H0004)
/* traditional screen positions and dimensions */
#define SA_Depth (SA_Dummy + &H0005)
/* screen bitmap depth */
#define SA_DetailPen (SA_Dummy + &H0006)
/* serves as default for windows, too */
#define SA_BlockPen (SA_Dummy + &H0007)
#define SA_Title (SA_Dummy + &H0008)
/* default screen title */
#define SA_Colors (SA_Dummy + &H0009)
/* ti_Data is an array of STRUCT ColorSpec,
* terminated by ColorIndex = -1. Specifies
* initial screen palette colors.
* Also see SA_Colors32 for use under V39.
*/
#define SA_ErrorCode (SA_Dummy + &H000A)
/* ti_Data points to LONGINT error code (values below)*/
#define SA_Font (SA_Dummy + &H000B)
/* equiv. to NewScreen.Font */
#define SA_SysFont (SA_Dummy + &H000C)
/* Selects one of the preferences system fonts:
* 0 - old DefaultFont, fixed-width
* 1 - WB Screen preferred font
*/
#define SA_Type (SA_Dummy + &H000D)
/* ti_Data is PUBLICSCREEN or CUSTOMSCREEN. For other
* fields of NewScreen.Type, see individual tags,
* eg. SA_Behind, SA_Quiet.
*/
#define SA_BitMap (SA_Dummy + &H000E)
/* ti_Data is pointer to custom BitMap. This
* implies type of CUSTOMBITMAP
*/
#define SA_PubName (SA_Dummy + &H000F)
/* presence of this tag means that the screen
* is to be a public screen. Please specify
* BEFORE the two tags below
*/
#define SA_PubSig (SA_Dummy + &H0010)
#define SA_PubTask (SA_Dummy + &H0011)
/* Task ID and signal for being notified that
* the last window has closed on a public screen.
*/
#define SA_DisplayID (SA_Dummy + &H0012)
/* ti_Data is new extended display ID from
* <graphics/displayinfo.h> (V37) or from
* <graphics/modeid.h> (V39 and up)
*/
#define SA_DClip (SA_Dummy + &H0013)
/* ti_Data points to a rectangle which defines
* screen display clip region
*/
#define SA_Overscan (SA_Dummy + &H0014)
/* Set to one of the OSCAN_
* specifiers below to get a system standard
* overscan region for your display clip,
* screen dimensions (unless otherwise specified),
* and automatically centered position (partial
* support only so far).
* If you use this, you shouldn't specify
* SA_DClip. SA_Overscan is for "standard"
* overscan dimensions, SA_DClip is for
* your custom numeric specifications.
*/
#define SA_Obsolete1 (SA_Dummy + &H0015)
/* obsolete S_MONITORNAME */
/** booleans **/
#define SA_ShowTitle (SA_Dummy + &H0016)
/* boolean equivalent to flag SHOWTITLE */
#define SA_Behind (SA_Dummy + &H0017)
/* boolean equivalent to flag SCREENBEHIND */
#define SA_Quiet (SA_Dummy + &H0018)
/* boolean equivalent to flag SCREENQUIET */
#define SA_AutoScroll (SA_Dummy + &H0019)
/* boolean equivalent to flag AUTOSCROLL */
#define SA_Pens (SA_Dummy + &H001A)
/* pointer to ~0 terminated SHORTINT array, as
* found in STRUCT DrawInfo
*/
#define SA_FullPalette (SA_Dummy + &H001B)
/* boolean: initialize color table to entire
* preferences palette (32 for V36), rather
* than compatible pens 0-3, 17-19, with
* remaining palette as returned by GetColorMap()
*/
#define SA_ColorMapEntries (SA_Dummy + &H001C)
/* New for V39:
* Allows you to override the number of entries
* in the ColorMap for your screen. Intuition
* normally allocates (1) or 32, whichever
* is more, but you may require even more if you
* use certain V39 graphics.library features
* (eg. palette-banking).
*/
#define SA_Parent (SA_Dummy + &H001D)
/* New for V39:
* ti_Data is a pointer to a "parent" screen to
* attach this one to. Attached screens slide
* and depth-arrange together.
*/
#define SA_Draggable (SA_Dummy + &H001E)
/* New for V39:
* Boolean tag allowing non-draggable screens.
* Do not use without good reason!
* (Defaults to TRUE).
*/
#define SA_Exclusive (SA_Dummy + &H001F)
/* New for V39:
* Boolean tag allowing screens that won't share
* the display. Use sparingly! Starting with 3.01,
* attached screens may be SA_Exclusive. Setting
* SA_Exclusive for each screen will produce an
* exclusive family. (Defaults to FALSE).
*/
#define SA_SharePens (SA_Dummy + &H0020)
/* New for V39:
* For those pens in the screen's DrawInfo->dri_Pens,
* Intuition obtains them in shared mode (see
* graphics.library/ObtainPen()). For compatibility,
* Intuition obtains the other pens of a public
* screen as PEN_EXCLUSIVE. Screens that wish to
* manage the pens themselves should generally set
* this tag to TRUE. This instructs Intuition to
* leave the other pens unallocated.
*/
#define SA_BackFill (SA_Dummy + &H0021)
/* New for V39:
* provides a "backfill hook" for your screen's
* Layer_Info.
* See layers.library/InstallLayerInfoHook()
*/
#define SA_Interleaved (SA_Dummy + &H0022)
/* New for V39:
* Boolean tag requesting that the bitmap
* allocated for you be interleaved.
* (Defaults to FALSE).
*/
#define SA_Colors32 (SA_Dummy + &H0023)
/* New for V39:
* Tag to set the screen's initial palette colors
* at 32 bits-per-gun. ti_Data is a pointer
* to a table to be passed to the
* graphics.library/LoadRGB32() function.
* This format supports both runs of color
* registers and sparse registers. See the
* autodoc for that function for full details.
* Any color set here has precedence over
* the same register set by SA_Colors.
*/
#define SA_VideoControl (SA_Dummy + &H0024)
/* New for V39:
* ti_Data is a pointer to a taglist that Intuition
* will pass to graphics.library/VideoControl(),
* upon opening the screen.
*/
#define SA_FrontChild (SA_Dummy + &H0025)
/* New for V39:
* ti_Data is a pointer to an already open screen
* that is to be the child of the screen being
* opened. The child screen will be moved to the
* front of its family.
*/
#define SA_BackChild (SA_Dummy + &H0026)
/* New for V39:
* ti_Data is a pointer to an already open screen
* that is to be the child of the screen being
* opened. The child screen will be moved to the
* back of its family.
*/
#define SA_LikeWorkbench (SA_Dummy + &H0027)
/* New for V39:
* Set ti_Data to 1 to request a screen which
* is just like the Workbench. This gives
* you the same screen mode, depth, size,
* colors, etc., as the Workbench screen.
*/
#define SA_Reserved (SA_Dummy + &H0028)
/* Reserved for private Intuition use */
#define SA_MinimizeISG (SA_Dummy + &H0029)
/* New for V40:
* For compatibility, Intuition always ensures
* that the inter-screen gap is at least three
* non-interlaced lines. If your application
* would look best with the smallest possible
* inter-screen gap, set ti_Data to TRUE.
* If you use the new graphics VideoControl()
* VC_NoColorPaletteLoad tag for your screen's
* ViewPort, you should also set this tag.
*/
/* this is an obsolete tag included only for compatibility with V35
* interim release for the A2024 and Viking monitors
*/
#ifndef NSTAG_EXT_VPMODE
#define NSTAG_EXT_VPMODE (TAG_USER OR 1)
#endif
/* OpenScreen error codes, which are returned in the (optional) LONGINT
* pointed to by ti_Data for the SA_ErrorCode tag item
*/
#define OSERR_NOMONITOR (1) /* named monitor spec not available */
#define OSERR_NOCHIPS (2) /* you need newer custom chips */
#define OSERR_NOMEM (3) /* couldn't get normal memory */
#define OSERR_NOCHIPMEM (4) /* couldn't get chipmem */
#define OSERR_PUBNOTUNIQUE (5) /* public screen name already used */
#define OSERR_UNKNOWNMODE (6) /* don't recognize mode asked for */
#define OSERR_TOODEEP (7) /* Screen deeper than HW supports */
#define OSERR_ATTACHFAIL (8) /* Failed to attach screens */
#define OSERR_NOTAVAILABLE (9) /* Mode not available for other reason */
/* ======================================================================== */
/* === NewScreen ========================================================== */
/* ======================================================================== */
/* note: to use the Extended field, you must use the
* new ExtNewScreen structure, below
*/
STRUCT NewScreen
SHORTINT LeftEdge
SHORTINT TopEdge
SHORTINT _Width
SHORTINT Height
SHORTINT Depth /* screen dimensions */
BYTE DetailPen
BYTE BlockPen /* for bar/border/gadget rendering */
SHORTINT ViewModes /* the Modes for the ViewPort (and View) */
SHORTINT _Type /* the Screen type (see defines above) */
TextAttrPtr _Font /* this Screen's default text attributes */
ADDRESS DefaultTitle /* the default title for this Screen */
GadgetPtr Gadgets /* UNUSED: Leave this NULL */
/* if you are opening a CUSTOMSCREEN and already have a BitMap
* that you want used for your Screen, you set the flags CUSTOMBITMAP in
* the Type field and you set this variable to point to your BitMap
* structure. The structure will be copied into your Screen structure,
* after which you may discard your own BitMap if you want
*/
BitMapPtr CustomBitMap
END STRUCT
/*
* For compatibility reasons, we need a new structure for extending
* NewScreen. Use this structure is you need to use the new Extension
* field.
*
* NOTE: V36-specific applications should use the
* OpenScreenTagList( newscreen, tags ) version of OpenScreen().
* Applications that want to be V34-compatible as well may safely use the
* ExtNewScreen structure. Its tags will be ignored by V34 Intuition.
*
*/
STRUCT ExtNewScreen
SHORTINT LeftEdge
SHORTINT TopEdge
SHORTINT _Width
SHORTINT Height
SHORTINT Depth
BYTE DetailPen
BYTE BlockPen
SHORTINT ViewModes
SHORTINT _Type
TextAttrPtr _Font
ADDRESS DefaultTitle
GadgetPtr Gadgets
BitMapPtr CustomBitMap
TagItemPtr Extension
/* more specification data, scanned if
* NS_EXTENDED is set in NewScreen.Type
*/
END STRUCT
/* === Overscan Types === */
#define OSCAN_TEXT (1) /* entirely visible */
#define OSCAN_STANDARD (2) /* just past edges */
#define OSCAN_MAX (3) /* as much as possible */
#define OSCAN_VIDEO (4) /* even more than is possible */
/* === Public Shared Screen Node === */
/* This is the representative of a public shared screen.
* This is an internal data structure, but some functions may
* present a copy of it to the calling application. In that case,
* be aware that the screen pointer of the structure can NOT be
* used safely, since there is no guarantee that the referenced
* screen will remain open and a valid data structure.
*
* Never change one of these.
*/
STRUCT PubScreenNode
Node psn_Node /* ln_Name is screen name */
ScreenPtr psn_Screen
SHORTINT psn_Flags /* below */
SHORTINT psn_Size /* includes name buffer */
SHORTINT psn_VisitorCount /* how many visitor windows */
TaskPtr psn_SigTask /* who to signal when visitors gone */
BYTE psn_SigBit /* which signal */
END STRUCT
#define PSNF_PRIVATE (&H0001)
/* NOTE: Due to a bug in NextPubScreen(), make sure your buffer
* actually has MAXPUBSCREENNAME+1 characters in it!
*/
#define MAXPUBSCREENNAME (139) /* names no longer, please */
/* pub screen modes */
#define SHANGHAI &H0001 /* put workbench windows on pub screen */
#define POPPUBSCREEN &H0002 /* pop pub screen to front when visitor opens */
/* New for V39: Intuition has new screen depth-arrangement and movement
* functions called ScreenDepth() and ScreenPosition() respectively.
* These functions permit the old behavior of ScreenToFront(),
* ScreenToBack(), and MoveScreen(). ScreenDepth() also allows
* independent depth control of attached screens. ScreenPosition()
* optionally allows positioning screens even though they were opened
* SA_Draggable, FALSEEND STRUCT.
*/
/* For ScreenDepth(), specify one of SDEPTH_TOFRONT or SDEPTH_TOBACK,
* and optionally also SDEPTH_INFAMILY.
*
* NOTE: ONLY THE OWNER OF THE SCREEN should ever specify
* SDEPTH_INFAMILY. Commodities, "input helper" programs,
* or any other program that did not open a screen should never
* use that flag. (Note that this is a style-behavior
* requirement there is no technical requirement that the
* task calling this function need be the task which opened
* the screen).
*/
#define SDEPTH_TOFRONT (0) /* Bring screen to front */
#define SDEPTH_TOBACK (1) /* Send screen to back */
#define SDEPTH_INFAMILY (2) /* Move an attached screen with
* respect to other screens of
* its family
*/
/* Here's an obsolete name equivalent to SDEPTH_INFAMILY: */
#define SDEPTH_CHILDONLY SDEPTH_INFAMILY
/* For ScreenPosition(), specify one of SPOS_RELATIVE, SPOS_ABSOLUTE,
* or SPOS_MAKEVISIBLE to describe the kind of screen positioning you
* wish to perform:
*
* SPOS_RELATIVE: The x1 and y1 parameters to ScreenPosition() describe
* the offset in coordinates you wish to move the screen by.
* SPOS_ABSOLUTE: The x1 and y1 parameters to ScreenPosition() describe
* the absolute coordinates you wish to move the screen to.
* SPOS_MAKEVISIBLE: (x1, y1)-(x2, y2) describes a rectangle on the
* screen which you would like autoscrolled into view.
*
* You may additionally set SPOS_FORCEDRAG along with any of the
* above. Set this if you wish to reposition an SA_Draggable, FALSEEND STRUCT
* screen that you opened.
*
* NOTE: ONLY THE OWNER OF THE SCREEN should ever specify
* SPOS_FORCEDRAG. Commodities, "input helper" programs,
* or any other program that did not open a screen should never
* use that flag.
*/
#define SPOS_RELATIVE (0) /* Coordinates are relative */
#define SPOS_ABSOLUTE (1) /* Coordinates are expressed as
* absolutes, not relatives.
*/
#define SPOS_MAKEVISIBLE (2) /* Coordinates describe a box on
* the screen you wish to be
* made visible by autoscrolling
*/
#define SPOS_FORCEDRAG (4) /* Move non-draggable screen */
/* New for V39: Intuition supports double-buffering in screens,
* with friendly interaction with menus and certain gadgets.
* For each buffer, you need to get one of these structures
* from the AllocScreenBuffer() call. Never allocate your
* own ScreenBuffer structures!
*
* The sb_DBufInfo field is for your use. See the graphics.library
* AllocDBufInfo() autodoc for details.
*/
STRUCT ScreenBuffer
BitMapPtr sb_BitMap /* BitMap of this buffer */
DBufInfoPtr sb_DBufInfo /* DBufInfo for this buffer */
END STRUCT
/* These are the flags that may be passed to AllocScreenBuffer().
*/
#define SB_SCREEN_BITMAP 1
#define SB_COPY_BITMAP 2
/* Include obsolete identifiers: */
#ifndef INTUITION_IOBSOLETE_H
#include <intuition/iobsolete.h>
#endif
#endif